package everydayone.canJump;
/**
 * @Date 2020/04/17
 * @author 王光浩
 * @Thinking 使用双指针方法。
 * @Analysis 时间复杂度O（n），空间复杂度O（1）
 */
public class MyMethodOne {
	public boolean canJump(int[] nums) {
		if(nums.length <= 1)return true;
		int first = 0;
		int second = 1;
		int target = nums.length-1;
		while(first<second) {
			int max = 0;   //在 [first,second)内的元素所能达到的最远下标
			for(int i=first ; i<second ; i++) max = Math.max(max, nums[i]+i);
			if( max>=target ) return true;
			first = second;
			second = max+1;
		}
		return false;
    }
}
